﻿<%@ Application Language="C#" %>
<%@ Import Namespace="Lib" %>
<%@ Import Namespace="Persistance.Model" %>
<%@ Import Namespace="System.Collections.Generic" %>
<script runat="server">

    void Application_Start(object sender, EventArgs e) 
    {
        configurePersistance();

    }
    
    void Application_End(object sender, EventArgs e) 
    {
        //  Code that runs on application shutdown

    }
        
    void Application_Error(object sender, EventArgs e) 
    { 
        // Code that runs when an unhandled error occurs

    }

    void Session_Start(object sender, EventArgs e) 
    {
        // Code that runs when a new session is started

    }

    void Session_End(object sender, EventArgs e) 
    {
        // Code that runs when a session ends. 
        // Note: The Session_End event is raised only when the sessionstate mode
        // is set to InProc in the Web.config file. If session mode is set to StateServer 
        // or SQLServer, the event is not raised.

    }

    void configurePersistance()
    {
        if (Persistor.IsConfigurationSet == false)
        {
            string SQLconnectionString = ConfigurationManager.ConnectionStrings[1].ConnectionString;
            
            Persistor.Configure(SQLconnectionString, typeof(ApplicationLog), Persistor.DatabaseType.MSSQL2005);
            Persistor.Configure(SQLconnectionString, typeof(Items), Persistor.DatabaseType.MSSQL2005);
            Persistor.Configure(SQLconnectionString, typeof(Categories), Persistor.DatabaseType.MSSQL2005);
            Persistor.Configure(SQLconnectionString, typeof(Locations), Persistor.DatabaseType.MSSQL2005);
            Persistor.Configure(SQLconnectionString, typeof(Users), Persistor.DatabaseType.MSSQL2005);
            Persistor.Configure(SQLconnectionString, typeof(Photos), Persistor.DatabaseType.MSSQL2005);
            Persistor.Configure(SQLconnectionString, typeof(Requests), Persistor.DatabaseType.MSSQL2005);
            Persistor.Configure(SQLconnectionString, typeof(Status), Persistor.DatabaseType.MSSQL2005);
            Persistor.Configure(SQLconnectionString, typeof(ItemType), Persistor.DatabaseType.MSSQL2005);
            Persistor.Configure(SQLconnectionString, typeof(LogEntryType), Persistor.DatabaseType.MSSQL2005);
        }
    }
       
</script>
